package com.hanamaki.method;

/**
 * Java中的重载
 * 满足重载的要求
 * 1. 方法名必须相同，参数列表必须不同（个数不同、参数的数据类型不同、方法的返回值类型可以不同）
 * 2. 但是仅仅返回值类型不同不能构成重载
 */
public class Demo05 {

    public static void main(String[] args) {

        // 如果方法名相同时，Java的编译器会根据调用方法的参数个数、数据类型来逐个匹配，以选择对应的方法
        max(2, 3);

    }


    /**
     * 两数比较大小的方法
     * @param a
     * @param b
     */
    public static void max(int a, int b) {
        if (a == b) {
            System.out.println(a);
        } else {
            System.out.println(a > b ? a : b);
        }
    }


    /**
     * 三数比较大小的方法
     *
     * @param a
     * @param b
     */
    public static void max(int b, double a) {
        if (a == b) {
            System.out.println(a);
        } else {
            System.out.println(a > b ? a : b);
        }
    }


}
